The present invention relates to computer graphics and, in particular, to creating a bounded image including a number of sub-images. Although the present invention finds particular application to the creation of computer fonts in which the boundary is the exterior of a character, the invention is not limited thereto and also finds application in the printing of large scale images on substrates such as textiles paper, sheet polymers and the like.
The preferred embodiment of the present invention discloses a method of packing circles in arbitrary regions where packing density and properties of component circles are subject to variation according to their position with respect to reference objects (eg points, lines or curves) or goals.
In the field of computer graphics it is often desirable to decorate or enhance given shapes to make them more visually interesting, eg for the purposes of advertising or web page design. This is done by adding texture to the region defined by a shape, such as filling the region with multiple instances of smaller objects, resulting in a more complex composite image. Circle packing provides such a texture.
Traditional circle packing methods obey the following general conditions:
(a) the packing is reasonably dense and evenly distributed across the region,
(b) circles are positioned so as to give the impression of random placement and avoid noticeable locally repeating patterns,
(c) circles do not intersect neighbouring circles,
(d) circles are tangential to and touching their nearest neighbours,
(e) the packing is obsculatory, ie any available area is always covered by the largest possible circle.
The simplest prior art method of circle packing is the random placement of circles within the region. This is inefficient and does not satisfy conditions (a), (c), (d) or (e) above.
Apollonian packing is also known. This is achieved by placing at random unfilled points within the region, the largest circle that touches at least three other circles. It satisfies all of the above conditions but does not allow control over properties of the individual circles, whose diameters are defined deterministically.
The related 1-tangent method (Pickover C. 1990, xe2x80x9cComputers, Pattern, Chaos and Beautyxe2x80x9d. St Martin""s Press, New York, p 332-6) is a prior art method which relaxes the condition that the filling circle touch at least three neighbours, and requires only that the filling circle touch at least 1 neighbour. This method is more efficient than Apollonian packing, satisfies all of the above conditions except (e), and does not necessarily result in a deterministic packing. However, again 1-tangent packing does not provide control over properties of individual circles.
The object of the present invention is to create such composite images from sub-images within a boundary (the sub-images not being restricted to circles) but for aesthetic reasons to relax the above general conditions and/or to provide a spatial relationship followed by a parameter of the sub-images within the image boundary.
For example, to further enhance the artistic effect it is often desirable to manipulate the packing density or properties of component circles dependent on their position with respect to reference objects or goals. For instance, it may be desired to vary the size of circles so that they increase in diameter in accordance with their vertical position, or to vary the density of the circles so that they are more densely packed towards tile centre of the boundary.
The existing techniques are limited in that although they address the problem of even-distribution packings within a space, they do not provide for further manipulations of density or properties of components such as circles that the user may wish to apply. Given the computational nature of these algorithms, it is desired that such manipulations occur with a minimum of interaction from the user, but that the user also have reasonably precise control over the final result.
In accordance with one aspect of the present invention there is disclosed a method of creating a bounded image from a plurality of sub-images, said method comprising the steps of:
(1) defining a boundary for said image,
(2) specifying parameters of each said sub-image, and
(3) creating said sub-images within said boundary whilst maintaining a spatial relationship of at least one parameter within said boundary.
In accordance with a second aspect of the present invention there is disclosed an apparatus for creating a bounded image from a plurality of sub-images, said apparatus comprising:
first means to define a boundary for said image,
second means to specify parameters for each said sub-image, and
third means to create sub-image within said boundary whilst maintaining a spatial relationship of at least one parameter within said boundary.
In accordance with a third aspect of the present invention there is disclosed a computer program product for creating a bounded image from a plurality of sub-images, said product comprising:
first means to define a boundary for said image,
second means to specify parameters for each said sub-image, and
third means to create sub-images within said boundary whilst maintaining a spatial relationship of at least one parameter within said boundary.
In accordance with a fourth aspect of the present invention there is disclosed a bounded image having a plurality of sub-images and being formed by any of the first, second or third aspects.